package main

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

func sayHello(c *gin.Context) {
	c.JSON(200, gin.H{
		"message": "hello golang",
	})
}

func main() {
	// 创建一个默认的路由引擎
	r := gin.Default()
	//指定用户使用GET请求访问/hello时，执行sayHello这个函数
	r.GET("/hello", sayHello)

	//r.GET("/book", ...)
	//r.GET("/create_book", ...)
	//r.GET("/update_book", ...)
	//r.GET("/delete_book", ...)

	//RESTful API
	r.GET("/book", func(c *gin.Context) {
		c.JSON(200, gin.H{
			"method": "GET",
		})
	})
	r.POST("/book", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"method": "POST",
		})
	})
	r.PUT("/book", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"method": "PUT",
		})
	})
	r.DELETE("/book", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"method": "DELETE",
		})
	})

	//启动服务
	r.Run(":9090")
}

//func main() {
//	http.HandleFunc("/hello", sayHello)
//	err := http.ListenAndServe(":9090", nil)
//	if err != nil {
//		fmt.Printf("http server faied,err:%v\n", err)
//		return
//	}
//}
